package com.zysd.collection.scheduler.domain.meter;

import org.apache.commons.lang3.builder.ToStringBuilder;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 电能表实体
 *
 * @author qingh, liuht
 * 日期 2017/11/10
 */
public class MeterInfoDto {

    /**
     * <pre>
     * 电能表主键
     * 表字段 : esm_meter.id
     * </pre>
     */
    private Long id;

    /**
     * <pre>
     * 计量点Id
     * 表字段 : esm_meter.mpId
     * </pre>
     */
    private Long mpId;

    /**
     * 计量点名称
     */
    private String mpName;

    /**
     * 客户id
     */
    private Long customId;

    /**
     * 客户名称
     */
    private String customName;

    /**
     * <pre>
     * 终端号
     * 表字段 : esm_meter.terminalId
     * </pre>
     */
    private Long terminalId;

    /**
     * 终端名称
     */
    private String terminalName;

    /**
     * <pre>
     * 区域码
     * 表字段 : esm_terminal.regionNo
     * </pre>
     */
    private Integer regionNo;

    /**
     * <pre>
     * 地址码
     * 表字段 : esm_terminal.localNo
     * </pre>
     */
    private Integer localNo;

    /**
     * <pre>
     * 电能表名称
     * 表字段 : esm_meter.name
     * </pre>
     */
    private String name;

    /**
     * <pre>
     * 电能表号
     * 表字段 : esm_meter.code
     * </pre>
     */
    private String code;

    /**
     * <pre>
     * 条形码
     * 表字段 : esm_meter.barNo
     * </pre>
     */
    private String barNo;

    /**
     * <pre>
     * 表计用途类型
     * 表字段 : esm_meter.usageType
     * </pre>
     */
    private String usageType;

    /**
     * <pre>
     * 电表地址码
     * 表字段 : esm_meter.addrNo
     * </pre>
     */
    private String addrNo;

    /**
     * <pre>
     * 电表属性
     * 表字段 : esm_meter.type
     * </pre>
     */
    private String type;

    /**
     * <pre>
     * 大分类
     * 表字段 : esm_meter.major
     * </pre>
     */
    private String major;

    /**
     * <pre>
     * 小分类
     * 表字段 : esm_meter.minor
     * </pre>
     */
    private String minor;

    /**
     * <pre>
     * 安装地址
     * 表字段 : esm_meter.installAddr
     * </pre>
     */
    private String installAddr;

    /**
     * <pre>
     * 通讯端口
     * 表字段 : esm_meter.communPort
     * </pre>
     */
    private Integer communPort;

    /**
     * <pre>
     * 通讯协议
     * 表字段 : esm_meter.communProtocol
     * </pre>
     */
    private String communProtocol;

    /**
     * <pre>
     * 通讯密码
     * 表字段 : esm_meter.communPswd
     * </pre>
     */
    private String communPswd;

    /**
     * <pre>
     * 波特率
     * 表字段 : esm_meter.bote
     * </pre>
     */
    private String bote;

    /**
     * <pre>
     * 序号
     * 表字段 : esm_meter.indexNo
     * </pre>
     */
    private Integer indexNo;

    /**
     * <pre>
     * 测点
     * 表字段 : esm_meter.pn
     * </pre>
     */
    private Integer pn;

    /**
     * <pre>
     * 整数位
     * 表字段 : esm_meter.intergerSite
     * </pre>
     */
    private String intergerSite;

    /**
     * <pre>
     * 小数位
     * 表字段 : esm_meter.digitSite
     * </pre>
     */
    private String digitSite;

    /**
     * <pre>
     * 电能表运行状态
     * 表字段 : esm_meter.runStatus
     * </pre>
     */
    private String runStatus;

    /**
     * <pre>
     * 接线方式
     * 表字段 : esm_meter.connectionType
     * </pre>
     */
    private String connectionType;

    /**
     * <pre>
     * 资产归属（售电公司，客户）
     * 表字段 : esm_meter.owner
     * </pre>
     */
    private String owner;

    /**
     * <pre>
     * 倍率
     * 表字段 : esm_meter.meterRate
     * </pre>
     */
    private Double meterRate;

    /**
     * <pre>
     * 电流比
     * 表字段 : esm_meter.rcRatioCode
     * </pre>
     */
    private String rcRatioCode;

    /**
     * <pre>
     * 电流比倍数
     * 表字段 : esm_meter.rcRatioRate
     * </pre>
     */
    private Double rcRatioRate;

    /**
     * <pre>
     * 电压比
     * 表字段 : esm_meter.voltRatioCode
     * </pre>
     */
    private String voltRatioCode;

    /**
     * <pre>
     * 电压比倍数
     * 表字段 : esm_meter.voltRatioRate
     * </pre>
     */
    private BigDecimal voltRatioRate;

    /**
     * <pre>
     * 所属组织Id
     * 表字段 : esm_meter.orgId
     * </pre>
     */
    private Long orgId;

    /**
     * <pre>
     * 创建人
     * 表字段 : esm_meter.createUser
     * </pre>
     */
    private Long createUser;

    /**
     * <pre>
     * 创建时间
     * 表字段 : esm_meter.createTime
     * </pre>
     */
    private Date createTime;

    /**
     * <pre>
     *
     * 表字段 : esm_meter.updateUser
     * </pre>
     */
    private Long updateUser;

    /**
     * <pre>
     * 更新时间
     * 表字段 : esm_meter.updateTime
     * </pre>
     */
    private Date updateTime;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getMpId() {
        return mpId;
    }

    public void setMpId(Long mpId) {
        this.mpId = mpId;
    }

    public String getMpName() {
        return mpName;
    }

    public void setMpName(String mpName) {
        this.mpName = mpName;
    }

    public Long getCustomId() {
        return customId;
    }

    public void setCustomId(Long customId) {
        this.customId = customId;
    }

    public String getCustomName() {
        return customName;
    }

    public void setCustomName(String customName) {
        this.customName = customName;
    }

    public Long getTerminalId() {
        return terminalId;
    }

    public void setTerminalId(Long terminalId) {
        this.terminalId = terminalId;
    }

    public String getTerminalName() {
        return terminalName;
    }

    public void setTerminalName(String terminalName) {
        this.terminalName = terminalName;
    }

    public Integer getRegionNo() {
        return regionNo;
    }

    public void setRegionNo(Integer regionNo) {
        this.regionNo = regionNo;
    }

    public Integer getLocalNo() {
        return localNo;
    }

    public void setLocalNo(Integer localNo) {
        this.localNo = localNo;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getBarNo() {
        return barNo;
    }

    public void setBarNo(String barNo) {
        this.barNo = barNo;
    }

    public String getUsageType() {
        return usageType;
    }

    public void setUsageType(String usageType) {
        this.usageType = usageType;
    }

    public String getAddrNo() {
        return addrNo;
    }

    public void setAddrNo(String addrNo) {
        this.addrNo = addrNo;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getMajor() {
        return major;
    }

    public void setMajor(String major) {
        this.major = major;
    }

    public String getMinor() {
        return minor;
    }

    public void setMinor(String minor) {
        this.minor = minor;
    }

    public String getInstallAddr() {
        return installAddr;
    }

    public void setInstallAddr(String installAddr) {
        this.installAddr = installAddr;
    }

    public Integer getCommunPort() {
        return communPort;
    }

    public void setCommunPort(Integer communPort) {
        this.communPort = communPort;
    }

    public String getCommunProtocol() {
        return communProtocol;
    }

    public void setCommunProtocol(String communProtocol) {
        this.communProtocol = communProtocol;
    }

    public String getCommunPswd() {
        return communPswd;
    }

    public void setCommunPswd(String communPswd) {
        this.communPswd = communPswd;
    }

    public String getBote() {
        return bote;
    }

    public void setBote(String bote) {
        this.bote = bote;
    }

    public Integer getIndexNo() {
        return indexNo;
    }

    public void setIndexNo(Integer indexNo) {
        this.indexNo = indexNo;
    }

    public Integer getPn() {
        return pn;
    }

    public void setPn(Integer pn) {
        this.pn = pn;
    }

    public String getIntergerSite() {
        return intergerSite;
    }

    public void setIntergerSite(String intergerSite) {
        this.intergerSite = intergerSite;
    }

    public String getDigitSite() {
        return digitSite;
    }

    public void setDigitSite(String digitSite) {
        this.digitSite = digitSite;
    }

    public String getRunStatus() {
        return runStatus;
    }

    public void setRunStatus(String runStatus) {
        this.runStatus = runStatus;
    }

    public String getConnectionType() {
        return connectionType;
    }

    public void setConnectionType(String connectionType) {
        this.connectionType = connectionType;
    }

    public String getOwner() {
        return owner;
    }

    public void setOwner(String owner) {
        this.owner = owner;
    }

    public Double getMeterRate() {
        return meterRate;
    }

    public void setMeterRate(Double meterRate) {
        this.meterRate = meterRate;
    }

    public String getRcRatioCode() {
        return rcRatioCode;
    }

    public void setRcRatioCode(String rcRatioCode) {
        this.rcRatioCode = rcRatioCode;
    }

    public Double getRcRatioRate() {
        return rcRatioRate;
    }

    public void setRcRatioRate(Double rcRatioRate) {
        this.rcRatioRate = rcRatioRate;
    }

    public String getVoltRatioCode() {
        return voltRatioCode;
    }

    public void setVoltRatioCode(String voltRatioCode) {
        this.voltRatioCode = voltRatioCode;
    }

    public BigDecimal getVoltRatioRate() {
        return voltRatioRate;
    }

    public void setVoltRatioRate(BigDecimal voltRatioRate) {
        this.voltRatioRate = voltRatioRate;
    }

    public Long getOrgId() {
        return orgId;
    }

    public void setOrgId(Long orgId) {
        this.orgId = orgId;
    }

    public Long getCreateUser() {
        return createUser;
    }

    public void setCreateUser(Long createUser) {
        this.createUser = createUser;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Long getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(Long updateUser) {
        this.updateUser = updateUser;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this)
                .append("id", id)
                .append("mpId", mpId)
                .append("mpName", mpName)
                .append("customId", customId)
                .append("customName", customName)
                .append("terminalId", terminalId)
                .append("terminalName", terminalName)
                .append("regionNo", regionNo)
                .append("localNo", localNo)
                .append("name", name)
                .append("code", code)
                .append("barNo", barNo)
                .append("usageType", usageType)
                .append("addrNo", addrNo)
                .append("type", type)
                .append("major", major)
                .append("minor", minor)
                .append("installAddr", installAddr)
                .append("communPort", communPort)
                .append("communProtocol", communProtocol)
                .append("communPswd", communPswd)
                .append("bote", bote)
                .append("indexNo", indexNo)
                .append("pn", pn)
                .append("intergerSite", intergerSite)
                .append("digitSite", digitSite)
                .append("runStatus", runStatus)
                .append("connectionType", connectionType)
                .append("owner", owner)
                .append("meterRate", meterRate)
                .append("rcRatioCode", rcRatioCode)
                .append("rcRatioRate", rcRatioRate)
                .append("voltRatioCode", voltRatioCode)
                .append("voltRatioRate", voltRatioRate)
                .append("orgId", orgId)
                .append("createUser", createUser)
                .append("createTime", createTime)
                .append("updateUser", updateUser)
                .append("updateTime", updateTime)
                .toString();
    }
}
